package gov.chinatax.ctcps.generator.dao.pojo;

import java.io.Serializable;
import org.apache.commons.lang.builder.EqualsBuilder;
import org.apache.commons.lang.builder.HashCodeBuilder;
import org.apache.commons.lang.builder.ToStringBuilder;

/** 
 *        @hibernate.class
 *         table="XTGL_BASEINFO"
 *     
*/
public class XtglBaseinfo implements Serializable {

    /** identifier field */
    private String infoId;

    /** nullable persistent field */
    private String infoName;

    /** nullable persistent field */
    private String infoCode;

    /** nullable persistent field */
    private String infoAdminName;

    /** nullable persistent field */
    private String infoAdminPassword;

    /** nullable persistent field */
    private String infoVersion;

    /** nullable persistent field */
    private String infoPublishData;

    /** nullable persistent field */
    private String infoOwner;

    /** nullable persistent field */
    private String infoOwnerShortname;

    /** nullable persistent field */
    private String infoDeveloper;

    /** nullable persistent field */
    private String infoLoginLogo;

    /** nullable persistent field */
    private String infoIndexLogo;

    /** nullable persistent field */
    private String zt1;

    /** nullable persistent field */
    private String zt2;

    /** nullable persistent field */
    private String zt3;

    /** full constructor */
    public XtglBaseinfo(String infoId, String infoName, String infoCode, String infoAdminName, String infoAdminPassword, String infoVersion, String infoPublishData, String infoOwner, String infoOwnerShortname, String infoDeveloper, String infoLoginLogo, String infoIndexLogo, String zt1, String zt2, String zt3) {
        this.infoId = infoId;
        this.infoName = infoName;
        this.infoCode = infoCode;
        this.infoAdminName = infoAdminName;
        this.infoAdminPassword = infoAdminPassword;
        this.infoVersion = infoVersion;
        this.infoPublishData = infoPublishData;
        this.infoOwner = infoOwner;
        this.infoOwnerShortname = infoOwnerShortname;
        this.infoDeveloper = infoDeveloper;
        this.infoLoginLogo = infoLoginLogo;
        this.infoIndexLogo = infoIndexLogo;
        this.zt1 = zt1;
        this.zt2 = zt2;
        this.zt3 = zt3;
    }

    /** default constructor */
    public XtglBaseinfo() {
    }

    /** minimal constructor */
    public XtglBaseinfo(String infoId) {
        this.infoId = infoId;
    }

    /** 
     *            @hibernate.id
     *             generator-class="assigned"
     *             type="java.lang.String"
     *             column="INFO_ID"
     *         
     */
    public String getInfoId() {
        return this.infoId;
    }

    public void setInfoId(String infoId) {
        this.infoId = infoId;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_NAME"
     *             length="100"
     *         
     */
    public String getInfoName() {
        return this.infoName;
    }

    public void setInfoName(String infoName) {
        this.infoName = infoName;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_CODE"
     *             length="50"
     *         
     */
    public String getInfoCode() {
        return this.infoCode;
    }

    public void setInfoCode(String infoCode) {
        this.infoCode = infoCode;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_ADMIN_NAME"
     *             length="50"
     *         
     */
    public String getInfoAdminName() {
        return this.infoAdminName;
    }

    public void setInfoAdminName(String infoAdminName) {
        this.infoAdminName = infoAdminName;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_ADMIN_PASSWORD"
     *             length="50"
     *         
     */
    public String getInfoAdminPassword() {
        return this.infoAdminPassword;
    }

    public void setInfoAdminPassword(String infoAdminPassword) {
        this.infoAdminPassword = infoAdminPassword;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_VERSION"
     *             length="10"
     *         
     */
    public String getInfoVersion() {
        return this.infoVersion;
    }

    public void setInfoVersion(String infoVersion) {
        this.infoVersion = infoVersion;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_PUBLISH_DATA"
     *             length="10"
     *         
     */
    public String getInfoPublishData() {
        return this.infoPublishData;
    }

    public void setInfoPublishData(String infoPublishData) {
        this.infoPublishData = infoPublishData;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_OWNER"
     *             length="200"
     *         
     */
    public String getInfoOwner() {
        return this.infoOwner;
    }

    public void setInfoOwner(String infoOwner) {
        this.infoOwner = infoOwner;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_OWNER_SHORTNAME"
     *             length="50"
     *         
     */
    public String getInfoOwnerShortname() {
        return this.infoOwnerShortname;
    }

    public void setInfoOwnerShortname(String infoOwnerShortname) {
        this.infoOwnerShortname = infoOwnerShortname;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_DEVELOPER"
     *             length="500"
     *         
     */
    public String getInfoDeveloper() {
        return this.infoDeveloper;
    }

    public void setInfoDeveloper(String infoDeveloper) {
        this.infoDeveloper = infoDeveloper;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_LOGIN_LOGO"
     *             length="100"
     *         
     */
    public String getInfoLoginLogo() {
        return this.infoLoginLogo;
    }

    public void setInfoLoginLogo(String infoLoginLogo) {
        this.infoLoginLogo = infoLoginLogo;
    }

    /** 
     *            @hibernate.property
     *             column="INFO_INDEX_LOGO"
     *             length="100"
     *         
     */
    public String getInfoIndexLogo() {
        return this.infoIndexLogo;
    }

    public void setInfoIndexLogo(String infoIndexLogo) {
        this.infoIndexLogo = infoIndexLogo;
    }

    /** 
     *            @hibernate.property
     *             column="ZT1"
     *             length="50"
     *         
     */
    public String getZt1() {
        return this.zt1;
    }

    public void setZt1(String zt1) {
        this.zt1 = zt1;
    }

    /** 
     *            @hibernate.property
     *             column="ZT2"
     *             length="50"
     *         
     */
    public String getZt2() {
        return this.zt2;
    }

    public void setZt2(String zt2) {
        this.zt2 = zt2;
    }

    /** 
     *            @hibernate.property
     *             column="ZT3"
     *             length="50"
     *         
     */
    public String getZt3() {
        return this.zt3;
    }

    public void setZt3(String zt3) {
        this.zt3 = zt3;
    }

    public String toString() {
        return new ToStringBuilder(this)
            .append("infoId", getInfoId())
            .toString();
    }

    public boolean equals(Object other) {
        if ( !(other instanceof XtglBaseinfo) ) return false;
        XtglBaseinfo castOther = (XtglBaseinfo) other;
        return new EqualsBuilder()
            .append(this.getInfoId(), castOther.getInfoId())
            .isEquals();
    }

    public int hashCode() {
        return new HashCodeBuilder()
            .append(getInfoId())
            .toHashCode();
    }

}
